#pragma once

#include "Precompiled.hpp"

class ServiceManager
{
public:
  ServiceManager();
  ~ServiceManager();
  void AddService(ServiceInterface* newService);
  void Run();
  void InitializeAll();
private:
  void Update();
  void FrameUpdate();
  void TimeUpdate(float secondsPassed);
  std::vector<ServiceInterface*> myServices;
  LARGE_INTEGER previousTime;
  LARGE_INTEGER currentTime;
  LARGE_INTEGER performanceFrequency;
  float remainingTime;
  static const float fixedSecondsPerFrame;
};